CおよびC++のコンパイル依存関係
多くの場合、ソースファイルには include 文が含まれています。 また、インクルードファイル自身がさらに他のファイルをインクルードしている場合もあります。 特定のファイルを解析するためには、ソースファイルに含まれているinclude文によって指定されているファイルの場所を、Perforce QACが認識できなければなりません。認識できない場合、アナライザはそれらのファイル内で定義されているシンボルを解決することができません。 インクルードファイルを検索する場所は、Perforce QACではインクルードパスとして知られています。
ファイルは通常、コマンドラインからコンパイルされる際に、コマンドライン上で指定される定義を使用してコンパイルされます。 例えば、以下に示すコンパイルコマンドを実行した場合、プリプロセッサはコンパイルされるソースファイルと、そこから直接、間接的にincludeされる全てのファイルに対して、「MACRO」トークンが使用されている全ての箇所を「1」に置き換えます。
解析したいファイルとそれらのファイルをコンパイルするために必要なインクルードパスおよびマクロ定義は、通常自動ビルドまたは IDE プロジェクトファイルに含まれています。 この情報を抽出することは、プロジェクトを設定する際に必要になります。 この操作は、スクリプト抽出または、プロジェクトの同期を使用して行うことができます。